.pay-page {
  background: linear-gradient(180deg, #f7f2ea 0%, #fff 100%);
  min-height: 100vh;
  font-family: 'PingFang SC', 'Microsoft YaHei', Arial, sans-serif;
  padding-bottom: 80rpx;
}
.header {
  display: flex;
  align-items: center;
  padding: 64rpx 40rpx 0 40rpx;
}
.header .back {
  font-size: 48rpx;
  color: #a67c52;
  margin-right: 32rpx;
  cursor: pointer;
}
.header .title {
  font-size: 44rpx;
  font-weight: bold;
  color: #222;
}
.merchant-info {
  display: flex;
  align-items: center;
  margin: 48rpx 40rpx 0 40rpx;
}
.logo {
  width: 80rpx;
  height: 80rpx;
  border-radius: 16rpx;
  margin-right: 24rpx;
}
.merchant-detail .store {
  font-size: 36rpx;
  color: #333;
}
.amount-section {
  margin: 40rpx 40rpx 0 40rpx;
  display: flex;
  align-items: baseline;
}
.amount-section .label {
  font-size: 32rpx;
  color: #a67c52;
  margin-right: 16rpx;
}
.amount-section .amount {
  font-size: 72rpx;
  color: #4b2e0e;
  font-weight: bold;
}
.remark {
  color: #1e88e5;
  font-size: 28rpx;
  margin: 16rpx 40rpx;
  cursor: pointer;
}
.password-section {
  display: flex;
  align-items: center;
  margin: 40rpx 40rpx 0 40rpx;
}
.password-input {
  flex: 1;
  font-size: 40rpx;
  border: 2rpx solid #e0c9a6;
  border-radius: 16rpx;
  padding: 16rpx;
  color: #4b2e0e;
  background: #fff;
}
.forget {
  color: #1e88e5;
  font-size: 28rpx;
  margin-left: 24rpx;
  cursor: pointer;
}
.keyboard {
  margin: 40rpx 40rpx 0 40rpx;
}
.key-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16rpx;
}
.key {
  flex: 1;
  background: #fbe7ce;
  color: #4b2e0e;
  font-size: 40rpx;
  margin: 0 8rpx;
  border-radius: 16rpx;
  text-align: center;
  padding: 24rpx 0;
  cursor: pointer;
}
.key.confirm {
  background: #e5c7a0;
  color: #fff;
  font-weight: bold;
  margin-top: 24rpx;
}
.code-card {
  background: #fff;
  border-radius: 32rpx;
  margin: 40rpx 32rpx 0 32rpx;
  padding: 48rpx 0 0 0;
  box-shadow: 0 8rpx 32rpx #f5e7d6;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.barcode-number {
  font-size: 36rpx;
  letter-spacing: 8rpx;
  color: #222;
  text-align: center;
  margin-bottom: 24rpx;
}
.barcode {
  width: 90%;
  height: 80rpx;
  margin-bottom: 32rpx;
}
.qrcode {
  width: 260rpx;
  height: 260rpx;
  margin-bottom: 32rpx;
}
.refresh-row {
  width: 100%;
  text-align: center;
  color: #a67c52;
  font-size: 32rpx;
  padding: 32rpx 0 40rpx 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12rpx;
  border-top: 2rpx solid #f2e6d9;
}
.refresh-icon {
  font-size: 36rpx;
  margin-left: 8rpx;
}
.scan-pay-btn {
  margin: 80rpx 64rpx 0 64rpx;
  background: #fbe7ce;
  border-radius: 32rpx;
  padding: 32rpx 0;
  text-align: center;
  font-size: 40rpx;
  color: #a67c52;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16rpx;
}
.scan-icon {
  font-size: 44rpx;
} 